home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
COMAL
/
B-Book Series
/
(k)b8.d64
/
demo 4.2.l
< prev
next >
Wrap
Text File
|
2007-02-28
|
3KB
|
192 lines
0010 // DELETE "0:HOUSE.L.1"
0020 // M.SKELTON
0030 // SAVE "0:HOUSE.L.3"
0040 //
0050 // PROCEDURES
0060 //
0070 PROC INIT
0080 SETGRAPHIC 0
0090 HIDETURTLE
0100 BORDER 0
0110 BACKGROUND 0
0120 CLEAR
0130 ENDPROC INIT
0140 //
0150 PROC WAIT(X)
0160 T:=PEEK(162)+X; T1:=PEEK(162)
0170 WHILE T1<T DO
0180 T1:=T1+1
0190 ENDWHILE
0200 ENDPROC WAIT
0210 //
0220 PROC WALK
0230 MOVETO 155,49
0240 SETHEADING 215
0250 FORWARD 200
0260 MOVETO 165,49
0270 SETHEADING 145
0280 FORWARD 200
0290 ENDPROC WALK
0300 //
0310 PROC GROUND CLOSED
0320 PENCOLOR 5
0330 X:=130
0340 FOR I:=0 TO 48 DO
0350 MOVETO 0,I
0360 IF I MOD 2=0 THEN
0370 PENCOLOR 5
0380 ELSE
0390 PENCOLOR 13
0400 ENDIF
0410 DRAWTO X,I
0420 X:=X+.5
0430 ENDFOR I
0440 X:=190
0450 FOR I:=0 TO 48 DO
0460 MOVETO 319,I
0470 IF I MOD 2=0 THEN
0480 PENCOLOR 5
0490 ELSE
0500 PENCOLOR 13
0510 ENDIF
0520 DRAWTO X,I
0530 X:=X-.5
0540 ENDFOR I
0550 ENDPROC GROUND
0560 //
0570 PROC HOUSE
0580 MOVETO 120,49
0590 SETHEADING 0
0600 FOR I:=1 TO 2 DO
0610 FORWARD 51
0620 RIGHT 90
0630 FORWARD 80
0640 RIGHT 90
0650 ENDFOR I
0660 ENDPROC HOUSE
0670 //
0680 PROC ROOF
0690 HOME
0700 MOVETO 120,100
0710 RIGHT 55
0720 BACK 5
0730 FORWARD 54
0740 RIGHT 70
0750 FORWARD 54
0760 ENDPROC ROOF
0770 //
0780 PROC DOOR
0790 MOVETO 155,50
0800 SETHEADING 0
0810 FORWARD 20
0820 RIGHT 90
0830 FORWARD 10
0840 RIGHT 90
0850 FORWARD 20
0860 PLOT 162,60
0870 ENDPROC DOOR
0880 //
0890 PROC WINDOW(X,Y,H,W)
0900 SETHEADING 0
0910 MOVETO X,Y
0920 FOR I:=1 TO 2 DO
0930 FORWARD H
0940 RIGHT 90
0950 FORWARD W
0960 RIGHT 90
0970 ENDFOR I
0980 SETHEADING 0
0990 MOVETO X+4,Y
1000 FORWARD H
1010 MOVETO X,Y+4
1020 RIGHT 90
1030 FORWARD W
1040 ENDPROC WINDOW
1050 //
1060 PROC TRUNK(X,Y,L)
1070 MOVETO X,Y
1080 SETHEADING 0
1090 PENCOLOR 10
1100 FORWARD L
1110 ENDPROC TRUNK
1120 //
1130 PROC TREE(L)
1140 PENCOLOR 5
1150 IF L>4 THEN
1160 RIGHT 45
1170 FORWARD L
1180 TREE(L*.75)
1190 IF L<5 THEN BLOSSOM
1200 BACK L
1210 LEFT 90
1220 FORWARD L
1230 TREE(L*.75)
1240 IF L<5 THEN BLOSSOM
1250 BACK L
1260 RIGHT 45
1270 ENDIF
1280 ENDPROC TREE
1290 //
1300 PROC BLOSSOM
1310 PENCOLOR 7
1320 X:=XCOR
1330 Y:=YCOR
1340 PLOT X,Y
1350 PLOT X,Y+1
1360 PLOT X+1,Y
1370 PLOT X+1,Y+1
1380 PENCOLOR 5
1390 ENDPROC BLOSSOM
1400 //
1410 FUNC XCOR CLOSED
1420 HIGH'BIT#:=PEEK(27255)
1430 RETURN HIGH'BIT#*256+PEEK(27256)
1440 ENDFUNC XCOR
1450 //
1460 FUNC YCOR CLOSED
1470 RETURN 199-PEEK(27260)
1480 ENDFUNC YCOR
1490 //
1500 PROC BIRD1(X,Y)
1510 MOVETO X,Y
1520 LEFT 45
1530 FORWARD 5
1540 BACK 5
1550 RIGHT 90
1560 FORWARD 5
1570 ENDPROC BIRD1
1580 //
1590 // MAIN
1600 //
1610 INIT
1620 GROUND
1630 PENCOLOR 1
1640 HOUSE
1650 ROOF
1660 DOOR
1670 WINDOW(130,60,9,8)
1680 WINDOW(180,60,9,8)
1690 WINDOW(130,80,9,8)
1700 WINDOW(180,80,9,8)
1710 WINDOW(155,80,9,8)
1720 PENCOLOR 2
1730 FILL 125,51
1740 PENCOLOR 1
1750 FILL 125,101
1760 TRUNK(60,49,31)
1770 TREE(20)
1780 TRUNK(60,49,26)
1790 TREE(15)
1800 TRUNK(265,49,31)
1810 TREE(20)
1820 TRUNK(265,49,26)
1830 TREE(15)
1840 PENCOLOR 1
1850 BIRD1(100,180)
1860 REPEAT
1870 NULL
1880 UNTIL KEY$<>CHR$(0)
1890 SETTEXT
1900 PRINT "ô"
1910 END